package com.dayu.store.mapper;

import java.util.List;
import java.util.Map;

import com.dayu.store.domain.StoreCollect;
import com.dayu.store.domain.StoreData;
import com.dayu.store.domain.req.AppStoreCollectReq;

/**
 * 门店回收Mapper接口
 * 
 * @author HK
 * @date 2021-07-02
 */
public interface StoreCollectMapper 
{
    //查询所有员工，平均用时
    List<Map<String, Object>> queryAvgUseTimeList();

    List<Map<String, Object>> queryOfferNameCountList();

    //今日销售额
    Double queryNowSaleNumber();
    //入库数据总数
    Integer queryStockTotalNumber();

    //今日销量/库存
    String queryNowSaleAndTotalNumber();

    //合作商回收数量和金额
    String queryCollectAndPrice();
    //入库平均单价
    Double queryAvgCostPrice();

    //待交接处理
    Integer queryWarehouseNumber();

    //今日入库量
    Integer queryNowCreateNumber();

    //
    Integer queryCollectNumber();
    /**
     * 查询门店回收
     * 
     * @param storeId 门店回收ID
     * @return 门店回收
     */
    public StoreCollect selectStoreCollectById(Long storeId);

    /**
     * app获取回收列表
     * @param appStoreCollectReq
     * @return
     */
    public List<StoreCollect> appSelectCollectList(AppStoreCollectReq appStoreCollectReq);

    /**
     * 查询门店回收列表
     * 
     * @param storeCollect 门店回收
     * @return 门店回收集合
     */
    public List<StoreCollect> selectStoreCollectList(StoreCollect storeCollect);

    /**
     * 新增门店回收
     * 
     * @param storeCollect 门店回收
     * @return 结果
     */
    public int insertStoreCollect(StoreCollect storeCollect);

    /**
     * 修改门店回收
     * 
     * @param storeCollect 门店回收
     * @return 结果
     */
    public int updateStoreCollect(StoreCollect storeCollect);

    /**
     * 删除门店回收
     * 
     * @param storeId 门店回收ID
     * @return 结果
     */
    public int deleteStoreCollectById(Long storeId);

    /**
     * 批量删除门店回收
     * 
     * @param storeIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteStoreCollectByIds(Long[] storeIds);

    /**
     * 批量新增
     * @param list
     * @return
     */
    public int insertStoreCollectList(List<StoreCollect> list);

    /**
     * 实时统计
     * @param storeCollect
     * @return
     */
    public List<StoreData> selectStoreDataList(StoreCollect storeCollect);

    /**
     * 批量修改
     * @param list
     * @return
     */
    public int updateStoreCollectByList(List<StoreCollect> list);

    /**
     * 根据ids查询列表
     * @param storeIds
     * @return
     */
    public List<StoreCollect> selectStoreCollectByIds(Long[] storeIds);
}
